package agenteReact3;

import agenteReact2.Procurar;
import agenteReact2.Vaguear;
import agenteReact2.AgenteReact2;

public class AgenteReact3 extends AgenteReact2
{
	// Passar ao discriminador a imagem que recebe do Ambiente para discriminar
	// e por sua vez passa-se os estimulos para o Agente com memoria?
	
	// Redefinir Percepcionar: Discriminar
	
	private Discriminador discriminar = new Discriminador();
	private MemoriaTrabalho memTrabalho = new MemoriaTrabalho();
	
public void iniciar() {
		
		comportamentos.add(new Arrumar(memTrabalho));
		comportamentos.add(new Preencher(memTrabalho));
		comportamentos.add(new RecolherMem(memTrabalho));
		comportamentos.add(new AproximarMem(memTrabalho));
		comportamentos.add(new EvitarMem(memTrabalho));
		comportamentos.add(new Procurar());
		comportamentos.add(new Vaguear());
		
	}
	
	public void percepcionar()
	{
		// O Sensor de imagem passa ao Discriminador,
		// O Discriminador retorna os estimulos e o agente coloca-os na memoria de trabalho.
		imagem=this.getSensorImagem().detectar();
		memTrabalho.estimulos = discriminar.Discriminar(imagem);	
	}
}
